package com.qiall.user.ability.service.organization;

import com.qiall.common.entity.PageResponse;
import com.qiall.common.exception.BusinessResult;
import com.qiall.common.request.BaseResponse;
import com.qiall.common.request.GetByIdRequest;
import com.qiall.user.ability.entity.AddOrganizationDTO;
import com.qiall.user.ability.entity.OrgPageQueryDTO;
import com.qiall.user.ability.entity.OrganizationResponse;

/**
 * @author 吴金辉
 */
public interface OrganizationService {

    /**
     * @param request
     * @return
     */
    BusinessResult<BaseResponse> addOrganization(AddOrganizationDTO request);

    /**
     * 删除组织
     *
     * @param request
     * @return
     */
    BusinessResult<BaseResponse> deleteOrganization(GetByIdRequest request);


    /**
     * 获取组织信息
     *
     * @param getByIdRequest
     * @return
     */
    BusinessResult<OrganizationResponse> getOrganizationInfo(GetByIdRequest getByIdRequest);

    BusinessResult<PageResponse<OrganizationResponse>> getOrganizationByPage(OrgPageQueryDTO getByIdRequest);


}
